package com.sun.service.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.List;

@Data
@Accessors(chain = true)
public class TmVhcVehicleMovementReportPointQuery {
    private static final long serialVersionUID = 1L;

    private List<String> batchCodeList;

    private List<String> materialNoList;

    /**
     * vin号
     */
    @ApiModelProperty(value = "vin号", name = "vin", example = "")
    private String vin;
    /**
     * 工厂ID
     */
    @ApiModelProperty(value = "工厂ID", name = "tmBasPlantId", example = "")
    private Long tmBasPlantId;
    /**
     * 车间ID
     */
    @ApiModelProperty(value = "车间ID", name = "tmBasWorkShopId", example = "")
    private Long tmBasWorkShopId;
    /**
     * 产线ID
     */
    @ApiModelProperty(value = "产线ID", name = "tmBasLineId", example = "")
    private Long tmBasLineId;
    /**
     * 节点性质
     */
    @ApiModelProperty(value = "节点性质", name = "nodeNature", example = "")
    private String nodeNature;

    @ApiModelProperty(value = "节点性质集合", name = "nodeNatureList", example = "")
    private List<String> nodeNatureList;

    /**
     * 销售类型
     */
    @ApiModelProperty(value = "销售类型", name = "fc04", example = "")
    private String fc04;
    /**
     * 总装车型
     */
    @ApiModelProperty(value = "总装车型", name = "carType", example = "")
    private String carType;
    /**
     * AS码
     */
    @ApiModelProperty(value = "AS流水号", name = "asCode", example = "")
    private String asCode;
    /**
     * 过点开始日期
     */
    @ApiModelProperty(value = "日期(yyyy-MM-dd)", name = "scanDateStart", example = "")
    @DateTimeFormat(pattern = "yyyy-MM-dd") //入参
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private String inputTimeStart;
    /**
     * 过点结束日期
     */
    @ApiModelProperty(value = "日期(yyyy-MM-dd)", name = "scanDateEnd", example = "")
    @DateTimeFormat(pattern = "yyyy-MM-dd") //入参
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private String inputTimeEnd;

    @ApiModelProperty(value = "计划批次号", name = "planBatchCode", example = "")
    private String planBatchCode;

    /**
     * 销售批次号
     */
    @ApiModelProperty(value = "销售批次号", name = "salesBatchCode", example = "")
    private String salesBatchCode;


    @ApiModelProperty(value = "是否调拨")
    private String isAllocationC;


    /**
     * 车型公告号
     */
    @ApiModelProperty(value = "车型公告号", name = "vehModelName", example = "")
    private String vehModelName;


    /**
     * 整车物料号
     */
    @ApiModelProperty(value = "整车物料号", name = "materialNo", example = "")
    private String materialNo;


    @ApiModelProperty(value = "油漆车身物料号", name = "psMaterialNo", example = "")
    private String psMaterialNo;


    /**
     * 白车身物料号
     */
    @ApiModelProperty(value = "白车身物料号", name = "bsMaterialNo", example = "")
    private String bsMaterialNo;

    @ApiModelProperty(
            value = "排序字段",
            example = "name",
            required = false
    )
    private String sortFiled;
    @ApiModelProperty(
            value = "是否倒序",
            example = "true",
            required = false
    )
    private Boolean sortDesc;
}
